-- **********************************************************************
-- EOSN-PARTITIONING-MIB: McDATA EOSN Partitioning Enterprise MIB (SMIv2).
--
-- The nSCALE Dynamic Partition (nDP) group
-- Only users of the admin partition can access this group.
--
-- REVISION HISTORY
-- Date      PRG  Description
-- ======================================================================
-- Release 1.0
--
-- 06/18/04  xli  Renamed "sanera" to "eosn"
-- 02/20/04  xli  changed 0-based index to 1-based
-- 02/12/03  dhl  Updated assignment and config tables
-- 02/25/02  sto  Initial version
--
-- Copyright (c) 2003 McDATA Corp.  All rights reserved.
-- Copyright (c) 2002-2003 Sanera Systems, Inc.  All rights reserved.
-- **********************************************************************
--
EOSN-PARTITIONING-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY,
    NOTIFICATION-TYPE, TimeTicks, IpAddress, 
    Counter32, Counter64, Integer32, 
    Unsigned32, Gauge32                         FROM SNMPv2-SMI

    TEXTUAL-CONVENTION, TruthValue, 
    RowStatus, DisplayString, TimeStamp         FROM SNMPv2-TC

    MODULE-COMPLIANCE, OBJECT-GROUP             FROM SNMPv2-CONF

    SnmpAdminString                             FROM SNMP-FRAMEWORK-MIB

    BbSlotNumber, BbPartitionNumber             FROM  EOSN-TC

    eosnModules, eosnMIB                        FROM  EOSN-REG

    bbPartitioning                              FROM  EOSN-MIB;


eosnPartitioningModule MODULE-IDENTITY
        LAST-UPDATED    "0406181759Z"
        ORGANIZATION    "McDATA Corporation"
        CONTACT-INFO
        "       McDATA Corporation

        Postal: 370 San Aleso Ave
                Sunnyvale, CA  94086
                USA
 
           Tel: +1-408-734-6000
        E-mail: support@mcdata.com
           Web: www.mcdata.com

       "
        DESCRIPTION
                "This MIB module describes dynamic partitioning objects for 
        the Big Bang system."
        REVISION        "0302120000Z"
        DESCRIPTION
        "Initial version."
        ::= { eosnModules 5 }

bbPartitioningMaxSupported OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The maximum number of dynamic partitions supported by the system.
         This object is accessible only on the admin partition."
    ::= { bbPartitioning 1 }

bbPartitionConfigTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF BbPartitionConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for configuration of the partitions.
         This table is accessible only on admin partition."
    ::= { bbPartitioning 2 }

bbPartitionConfigEntry OBJECT-TYPE
    SYNTAX      BbPartitionConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry of the partition table."
    INDEX   { bbPartitionConfigIndex }
    ::= { bbPartitionConfigTable 1}

BbPartitionConfigEntry ::=
    SEQUENCE {
        bbPartitionConfigIndex              BbPartitionNumber, 
        bbPartitionConfigName               DisplayString,
        bbPartitionConfigIpAddress          IpAddress,
        bbPartitionConfigState              INTEGER,
        bbPartitionConfigPeerSyncStatus     INTEGER,
        bbPartitionConfigCommand            INTEGER
    }

bbPartitionConfigIndex OBJECT-TYPE
    SYNTAX      BbPartitionNumber
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique index to identify this partition."
    ::= { bbPartitionConfigEntry 1 }

bbPartitionConfigName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The name of this partition."
    ::= { bbPartitionConfigEntry 2 }

bbPartitionConfigIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The IP address of this partition."
    ::= { bbPartitionConfigEntry 3 }

bbPartitionConfigState OBJECT-TYPE
    SYNTAX INTEGER {
        enabled(1),
        disabled(2)
    }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The state of this partition."
    ::= { bbPartitionConfigEntry 4 }

bbPartitionConfigPeerSyncStatus OBJECT-TYPE
    SYNTAX INTEGER {
        unknown(1),   
        standAlone(2),
        active(3),
        standbySyncing(4),
        standbyReady(5),
        outOfService(6)
    }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The peer (remote CTP) sync status of this partition."
    ::= { bbPartitionConfigEntry 5 }

bbPartitionConfigCommand OBJECT-TYPE
    SYNTAX INTEGER {
        none(1),
        enable(2),
        enableClean(3),
        disable(4),
        restart(5)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object is used to issue a command to this partition.

        SET operation   Description
        --------------  ------------------------------------------------
        enable(2)       To enable a partition retaining previous configuration.
        enableClean(3)  To enable a partition with a clean (default) configuration.

                        For enable and enableClean, the following objects must have 
                        valid values so they can be used as defaults:
                              bbPartitionConfigName 
                              bbPartitionConfigIpAddress

        disable(4)      To disable a partition. A partition can be disabled only 
                        if it has no slots assigned to it.
        restart(5)      To restart a partition. A partition can be restarted even
                        if it owns slots.

        On a GET, none(1) is return."
    ::= { bbPartitionConfigEntry 6 }


bbPartitionSlotAssignmentTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF BbPartitionSlotAssignmentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for assigning slots to partitions.  This table is 
         accessible only on the admin partition."
    ::= { bbPartitioning 3 }

bbPartitionSlotAssignmentEntry OBJECT-TYPE
    SYNTAX      BbPartitionSlotAssignmentEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry of the slot assignment table."
    INDEX { bbPartitionSlotAssignmentIndex }
    ::= { bbPartitionSlotAssignmentTable 1}

BbPartitionSlotAssignmentEntry ::=
    SEQUENCE {
        bbPartitionSlotAssignmentIndex      BbSlotNumber,
        bbPartitionSlotAssignmentOwner      Integer32
    }

bbPartitionSlotAssignmentIndex OBJECT-TYPE
    SYNTAX      BbSlotNumber
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique index to identify the slot to assign. The number equals the slot number + 1."
    ::= { bbPartitionSlotAssignmentEntry 1 }

bbPartitionSlotAssignmentOwner OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The new partition owner to assign this slot to.  When a 
        new partition owner is assigned, this slot leaves the current 
        partition and joins the new partition. On a GET, this value
        indicates the owner of the specified slot."
    ::= { bbPartitionSlotAssignmentEntry 2 }

END